package com.teaching.teachingsupport.common.pojo.dataobject;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import java.time.LocalDateTime;

@Data
@TableName("teaching_class")
public class TeachingClass {
    @TableId(value = "class_id", type = IdType.AUTO)
    private Long teachingClassId;
    
    @TableField("course_id")
    private Long courseId;
    
    @TableField("teacher_id")
    private Long teacherId;
    
    @TableField("class_name")
    private String className;
    
    @TableField("semester_id")
    private Long semesterId;
    
    @TableField("grade")
    private Integer grade;
    
    @TableField("student_count")
    private Integer studentCount;
    
    @TableField("status")
    private String status;  // 进行中/已结束
    
    @TableField("is_graduated")
    private Boolean isGraduated;  // 是否已毕业
    
    @TableField("create_time")
    private LocalDateTime createTime;
    
    @TableField("update_time")
    private LocalDateTime updateTime;
    
    // 非数据库字段
    @TableField(exist = false)
    private String courseName;  // 课程名称
    
    @TableField(exist = false)
    private String teacherName;
    
    @TableField(exist = false)
    private String semesterName;  // 学期名称
    
    @TableField(exist = false)
    private String classTime;  // 上课时间
    
    @TableField(exist = false)
    private String classLocation;  // 上课地点
    
    @TableField(exist = false)
    private Integer version;  // 版本号
    
    @TableField(exist = false)
    private String department;  // 院系
    
    @TableField(exist = false)
    private String major;  // 专业
} 